Non-volatile memory (NVM) such as Nand Flash NVM have a limited lifespan. That is, the NVM can only endure a limited amount of write and erase cycles before the physical structure starts to break down and is unable to store data. Techniques such as wear leveling can be used to distribute the write and erase cycles among the NVM so that it wears out evenly. This technique can leverage erase counts or other data to determine how best to evenly wear out the NVM. However, there may be instances in which a portion (e.g., a physical block) of the NVM fails prior to experiencing a predetermined number of write and erase cycles. What are needed are techniques for detecting whether a portion of the NVM is failing or at least exhibiting traits of pending failure.